1. Field
Example embodiments relate to an apparatus, method and computer-readable medium stabilizing a humanoid robot, which may allow the robot to maintain a stable posture while keeping its balance when lifting and holding a heavy object having a weight unknown to the robot.
2. Description of the Related Art
An intelligent robot receives external information using a sense of sight or a sense of hearing, like a human, makes a judgment, and takes an appropriate action. A humanoid robot is a type of intelligent robot. The humanoid robot has the same appearance as a human, is bipedal, has two arms, and manipulates objects by hand.
The humanoid robot has joints similar to those of a human. Research into a humanoid robot for providing various services in place of a person in a human working and living space has been actively conducted.
In order to variously implement the whole-body operation of a humanoid robot like a human, actuators mounted in many joints of the robot need to be simultaneously and efficiently controlled. By such control, the natural whole-body motion of the robot may emulate a human action.
When the humanoid robot is brought into contact with an object, difficulty is increased due to a variation in kinetics of the robot caused by an external environment. If the weight of an object is known in advance, the kinetics of the robot changed when lifting and holding the object may be relatively accurately calculated and thus the whole-body motion of the robot may be generated. Accordingly, the robot may easily maintain a stable posture.
If an object having an unknown weight is lifted and held by the robot, it is difficult to estimate a variation in kinetics of the robot. Therefore, the robot may lose its balance and become unstable. For example, when the robot bends its legs in order to hold up a table having an object on the table (FIG. 1A) by lifting and holding the table with two arms (FIG. 1B), the robot may keep its balance. However, when the robot lifts and holds a table with two arms while straightening its legs (FIG. 1C), the robot may lose its balance and fall forward if the object is heavy.
When a heavy object is lifted and held, the whole-body motion of the robot needs to be controlled while taking into consideration the difficulty in estimating a variation in kinetics of the robot, in order to allow the robot to maintain a stable posture while keeping its balance.